package com.woniuxy.monitor.controller;

import com.woniuxy.monitor.pojo.Monitor;
import com.woniuxy.monitor.service.IFLVService;
import com.woniuxy.monitor.service.MonitorService;
import org.springframework.web.bind.annotation.*;

import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.util.List;

/**
 * 监控设备控制器
 * 提供监控设备管理功能
 */
@RestController
@RequestMapping("/monitor")
@CrossOrigin
public class MonitorController {
    @Resource
    private MonitorService monitorService;
    @Resource
    private IFLVService service;

    /**
     * 获取所有监控设备列表
     * 注意：此端点返回所有监控设备，包括活跃和非活跃的
     * 如果只需要获取可用于直播的活跃设备，请使用 /stream/list 端点
     * 
     * @return 所有监控设备列表
     */
    @GetMapping("/list")
    public List<Monitor> getAllMonitors() {
        return monitorService.list();
    }
    
    /**
     * 兼容旧版API
     * @return 所有监控设备列表
     * @deprecated 请使用 /monitor/list 替代
     */
    @GetMapping("")
    public List<Monitor> monitor() {
        return getAllMonitors();
    }



    @RequestMapping("/monitor/{id}")
    public void open4(HttpServletResponse response, HttpServletRequest request, @PathVariable("id") Integer id) {
        service.open(id, response, request);
    }

}
